Кибербезопасность предприятия
2025-10-16
Александрова Ульяна Вадимовна
Волгин Иван Алексеевич
Голощапов Ярослав Вячеславович
Дворкина Ева Владимировна
Серёгина Ирина Андреевна
Целью данной лабораторной работы является освоение практических навыков выявления, анализа и устранения уязвимостей информационных систем в рамках сценария «Защита контроллера домена предприятия».
Обнаружить, проанализировать и закрыть уязвимости:
SQL-инъекция;
защита антивируса;
Слабый пароль учетной записи.
Определить и устранить последствия эксплуатации уязвимостей:
Разработать и применить меры по устранению выявленных уязвимостей.
Уязвимости и последствия будут детектироваться в основном с помощью ViPNet IDS NS, некоторые последствия обнаруживаем с помощью работы на сервере или с помощью дополнительных приложений, далее последствия и уязвимости будут записываться в карточки инцидентов.
Для обнаружения актуальной подозрительной активности пользуемся фильтрами по дате, времени и важности.
Сетевой сенсор ViPNet IDS NS детектирует события сканирования веб-сервера на предмет SQL-инъекций (множественное срабатывание правила ET SCAN … указывает на неоднократные сканирования, правила ET SCAN sqlmap говорят о сканировании с помощью утилиты sqlmap, которая отслеживает SQL-инъекции)
Видим использование определенного типа инъекции (Blind SQL-Injection), а также загрузку вредоносного файла с php скриптом, что может указывать на использование php reverse shell и выставление права доступа на выполнение.
Также видим пакет к событию, в котором указан некий файл php и действие загрузки - upload.
Рисунок 5: Пакет к событию
Заполним карточку инцидента.
Нарушитель устанавливает shell сессию с веб-порталом PHP. Для обнаружения этого проверим сокеты уязвимой машины (Web Server PHP) при помощи утилиты ss с ключами –tp (утилита указывает, между какими компьютерами в сети установлена связь). Увидим подозрительное соединение с внешним сервером.
Рисунок 7: Список установленных соединений
Заполним карточку инцидента.
Один из способов проверки состояния защиты в реальном времени Windows Defender – в Powershell ввести команду Get-MpPreference и проверить значение параметра DisableRealtimeMonitoring. Если значение – True, то защита в реальном времени выключена. Мы ввели эту команду на узле администратора 10.10.4.10 и действительно получили, что отключение мониторинга с параметром True, значит, защита антивируса отключена.
Заполним карточку инцидента.
Рисунок 10: Карточка инцидента
Установленную сессию с нарушителем обнаружили при помощи утилиты netstat с ключами –ano.
Заполняем карточку инцидента.
С помощью ViPNet IDS NS в сетевом трафике обнаруживаются множественные попытки подключения к хосту AD&DNS с портом 3389 , сканирование системы, что может говорить о попытках подбора пароля. Также если мы зайдем на сам узел Active Directory, откроем Viewer Properties, перейдем в необходимую директорию с событиями (TerminalServeces…), то сможем увидеть событие с кодо 1149, которое говорит о том, что пользователю удалось подключиться по RDP.
Заполняем карточку инцидента
Добавление нового привилегированного пользователя отследили с помощью аудита событий входа в учетную запись Windows security (Viewer Properties). Далее перешли в Event Viewer и в Windows Logs – Security, затем применили фильтр на логи. Событие с ID 4720 должно было в нашей лабораторной появиться во временном промежутке с 17:30 до 18:00. Альтернативный способ обнаружения этого последствия - непосредственно зайти в Active Directory Users and Computers, где мы увидим странного нового пользователя.
Заполняем карточку инцидента
SQL-инъекция, то есть эксплуатируемая уязвимость, как было известно из анализа событий, находится на узле Web Server PHP (10.10.1.20). Переходим на него с помощью SSH подключения. Известно, что $id является уязвимым параметром, следует проверять тип данного параметра. Требуется найти место кода, где данный параметр считывается из GET запроса.
Для проверки типа $id используется функция is_numeric, которая возвращает True в случае, если $id – число, иначе – False. В случае успешной проверки параметр $id будет передаваться в запрос, иначе – запрос будет статичным и независимым от $id.
Рисунок 21: Измененная функция actionView с проверкой типа параметра $id
Нарушитель установил shell сессию с веб-порталом PHP. Ранее мы проверили сокеты уязвимой машины (Web Server PHP) и нашли соединение с внешним подозрительным сервером: активное соединение веб-портала с IP-адресом нарушителя (195.239.174.11). Для устранения необходимо воспользоваться командой ssс правами привилегированного пользователя, используя ключ –K и соответствующий адрес, порт для завершения сессии с нарушителем: sudo ss -K dst HACKER_IP dport = HACKER_PORT.
На узле Administrator Workstation мы удалили запись об отключенном антишпионском ПО в реестре через консоль, используя команду: REG DELETE "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender" /v DisableAntiSpyware. Подтвердили действие, далее в Windows Defender перезапустили Virus & Threat Protection и включили Real-time Protection
Рисунок 23: Удаление записи DisableAntiSpyware в реестре
Установленную сессию с нарушителем ранее обнаружили при помощи утилиты netstat с ключами –ano.
Для устранения завершили сессию с машиной нарушителя при помощи команды taskkill /f /pid
Рисунок 27: Остановка процесса
Изменяем пароль к учетной записи администратора на более сложный, не содержащийся в словарях, на узле MS Active Directory.
На нижеупомянутом рисунке изображена смена пароля администратора на узле MS Active Directory командой «net user Administrator *». В результате изменения ненадежного пароля уязвимость успешно устранена.
Рисунок 28: Изменение пароля администратора
Для удаления пользователя зашли в Administrative Tools – Active Directory Users and computers. Затем во вкладке Users найшли и удалилинового привилегированного пользователя с именем «Hacked».
В ходе выполнения лабораторной работы были успешно достигнуты поставленные цели: освоены практические навыки выявления, анализа и устранения типовых уязвимостей информационной системы. В рамках сценария «Защита контроллера домена предприятия» были обнаружены и закрыты критические уязвимости и их последствия эксплуатации.
Спасибо за внимание!